-
Notifications
You must be signed in to change notification settings - Fork 46
Update application services to 0.48.0 - Xcode 11.3 #1178
Conversation
Builds on buddybuild are currently failing because Glean needs to be updated to build with the newest version of Xcode and Swift. There should be a new release with this update in the next day or two. Glean team ticket here: https://bugzilla.mozilla.org/show_bug.cgi?id=1607593 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! 🚀
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good. A couple of nits, which are mainly down to taste. Well done.
Shared/Store/BaseDataStore.swift
Outdated
if let url = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: sharedContainerIdentifier) { | ||
rootPath = url.path | ||
guard let loginsDatabasePath = loginsDatabasePath else { return } | ||
setupSalt() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: my preference would be to have setupSalt()
return a string, and assignment happen here.
e.g.
self.salt = findSalt()
Shared/Store/BaseDataStore.swift
Outdated
} else { | ||
print("Unable to find the shared container. Defaulting profile location to ~/Documents instead.") | ||
rootPath = (NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]) | ||
salt = setupPlaintextHeaderAndGetSalt(databasePath: loginsDatabasePath, encryptionKey: loginsKey) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: similarly, this naming could do with some work:
salt = createNewSalt(databasePath: loginsDatabasePath, encryptionKey: loginsKey)
…date app services to 0.48.3. Move initFxa() to background thread to prevent blocking the main queue.
…running test versions of the app and then downgrading to the store version
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The AppDelegate.isFirstRun
calculated property may well cause some problem on upgrade.
Test the upgrade path, if it works! Then! Big! Green! Button!
Fixes #1176
Fixes #1170
Fixes #955
Updates Application Services to v0.48.3
Updates Glean to v23.0.1
Updates Lockwise to Xcode 11.3
Makes database plain text header and salt changes necessary to resolve Credential Provider Crashes - Autofill #1170 as discussed in App Services Issue 2100
Referenced Garvan's changes in Firefox iOS: Fix #5974: sql cipher plaintext header and salt mozilla-mobile/firefox-ios#5990
Fixes issue where when lockwise app is deleted and then reinstalled, user automatically gets logged in. Added keychain clearing at an earlier stage of startup to resolve this and resolve issues it caused with old database salts being stored.